﻿using FXSStation.Modules.SharedInfrastructureModule.BusinessClasses.Users;
using Microsoft.Practices.Composite.Presentation.Events;
using FXSStation.Modules.SharedInfrastructureModule.BusinessClasses.Orders;
using FXSStation.Modules.SharedInfrastructureModule.BusinessClasses.Chart;
using FXSStation.Modules.SharedInfrastructureModule.BusinessClasses.Common;

namespace FXSStation.Modules.SharedInfrastructureModule.Events
{
    /// <summary>
    /// Composite event, raised when a BuyOrder is made
    /// </summary>
    public class BuyOrderMadeEvent : CompositePresentationEvent<OrderBase> { }

    /// <summary>
    /// Composite event, raised when a SellOrder is made
    /// </summary>
    public class SellOrderMadeEvent : CompositePresentationEvent<OrderBase> { }

    /// <summary>
    /// Composite event, raised when the current price changes
    /// </summary>
    public class TickElapsedEvent : CompositePresentationEvent<Tick> { }

    /// <summary>
    /// Composite event, raised when a new simulation is started with a specific account
    /// </summary>
    public class SimulationStartedEvent : CompositePresentationEvent<Simulation>{}

    /// <summary>
    /// Composite event, raised when application closes.
    /// Obsolete at this point.
    /// </summary>
    public class ApplicationClosingEvent : CompositePresentationEvent<object> { }


}
